﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace CIS_Prog_Class
{
    class Program
    {
        static void Main(string[] args)
        {
            //setting string to use later in the code
            string n1, n2, n3, n4, n5;
            //This code has no ReadLine, only WriteLine that is only text that will be written in the console
            Console.WriteLine("Notes for Microcomputer components \n");
            Console.WriteLine("CMOS first used as a way to store time and latter used for other things because of the extra data space\n");
            //Talking about CMOS i decided to save a Link on a string for latter use or just archive
            n1 = "http://en.wikipedia.org/wiki/CMOS";
            Console.WriteLine("ROM previously known as MASK ROM, permanently coded with binary information on it\nMASK Refer to it because of the permanent \"engraving\" on it.\n");
            //Talking about ROM 1 more link to save
            n2 = "http://en.wikipedia.org/wiki/Read-only_memory";
            Console.WriteLine("After the chip was manufactured as a permanent memory, an extra circuit was invented called PROMS for Programable, NOT RE Programable\n");
            //Saved link for a different type of ROM
            n3 = "http://en.wikipedia.org/wiki/Programmable_read-only_memory";
            Console.WriteLine("NOTE: If you use a high intensity UV Ray, you could reverse the \"engraving\" process and reprogram, EPROM\n");
            //Same as before, different ROMS
            n4 = "http://en.wikipedia.org/wiki/EPROM";
            Console.WriteLine("BOOT PROCESS: Steps the computer takes before loading the operating system.\nAll Meemory on the computer is empty, no instructions on the processor, Instructions will be stored on the BIOS to load on F0000 the standard jump instruction for the processor to read the BIOS.\n");
            Console.WriteLine("Modern systems now has F0000 point the processor where the new data is to be found.\n");
            Console.WriteLine("BIOS has 4 pieces,\n1. - low level hardware drivers, such as CD ROM, Video, USB, HDD.\n2. - POST : List of instructions to check on the hardware stats.\n3. - COLD BOOT Loader: Finds the operating system loader, for it to run.\n4. - Setup Program: BIOS Setup, AKA CMOS Setup, sets up some data at CMOS and at BIOS\n");
            //The booting proccess of a computer, link for more info
            n5 = "http://en.wikipedia.org/wiki/Booting";
            Console.WriteLine("Processor moves bios data to the first 64Kb of RAM after testing those spaces, to read and compute faster.\nBy using the drivers loaded on BIOS processor checks Video and Keyboard connected.\nChecks for storage drives in numeric sequence 00,01.. to form a list or working and not working I/O's, use default boot order or get it from CMOS, find an operating system.\nIF a flag for a bootable OS exist, COLD BOOT runs to run the OS.\n");
            Console.WriteLine("NOTE: The proccessor tests all RAM if not set to skip that step. OS Repeats most of these steps.\nLINUX does the same, with the exeption of the Drive FORMAT type (NTFS).\n\n");
            //So a there is a text on tusday the links saved on the string will be "printed" on the screen for easy use.
            Console.WriteLine("IMPORTANT NOTE, TEST NEXT TUSDAY ABOUT EVERYTHING IN CLASS SINCE THE FIRST CLASS.\n{0}\n{1}\n{2}\n{3}\n{4}",n1,n2,n3,n4,n5);
        }
    }
}